<?php
namespace Api\Controller;
use Think\Controller;
class LoginController extends Controller {
	

	public function userLogin(){
        
                      $phone = I('phone');
                      $password = I('password');
                      if( empty($phone) || empty($password) ){
                        returnApiresult('1','请完善您的登录信息');exit;
                       }
		 
                      $isset_info = M('member')->where('phone="'.$phone.'" AND mem_type = 2 ')->field('password, id')->find();
                           if($isset_info){
                                        if( md5($password) == $isset_info['password'] ) {
                                                   $token =  md5($isset_info['id'].time());
                                                   $info['token'] = $token;
                                                   M('member')->where('id="'.$isset_info['id'].'"')->save($info);
                                                   $data['token'] = $token;
                                                   $data['cid'] = $isset_info['id']; // cid
                                                   $is_has = M('customer')->where('cid="'.$isset_info['id'].'"')->getField('id');
                                                        if($is_has){
                                                           $data['is_complete'] = 1;// 用户注册第三步详细信息已经填写完成、可以直接跳到首页
                                                        }else{
                                                           $data['is_complete'] = 2;//用户注册第三步详细信息没有填写完成跳到注册第三步
                                                        }
                                                   returnApiData('0','登录成功',$data);exit;	

                                         }else{
                                              returnmemberError('1','密码错误');exit;
                                         }

                             }else{
                                    returnmemberError('1','该用户不存在');exit;
                             }
		 
     }
	
   
   
        public function  login_code(){
                    $phone = I('phone');
                    $code = I('code');
                    if($code == '' || $phone == ''){
                          returnmemberError("1", "您的信息没有填写完整");exit;
                     }

                    //防短信轰炸机
                   // if(empty($_SESSION['sms_mobile'])){exit('非法请求');}

                    $is_phone = M('member')->where('phone="'.trim(I('phone')).'" AND mem_type = 2')->getField('id');
                            if( $is_phone == false){
                                returnmemberError("1", "该用户不存在");exit;
                             }else{
                                      $sms_mobile_code = F('liuq/log/logcode');
                                      if( $code != $sms_mobile_code ){
                                      returnmemberError("1", "验证码填写错误");exit;
                                      } else {
                                         $token =  md5($is_phone.time());
                                         $info['token'] = $token;
                                         M('member')->where('id="'.$is_phone.'"')->save($info);
                                         $data['token'] = $token;
                                         $data['cid'] = $is_phone;
                                         $is_has = M('customer')->where('cid="'.$is_phone.'"')->getField('id');
                                                 if($is_has){
                                                      $data['is_complete'] = 1;// 用户注册第三步详细信息已经填写完成、可以直接跳到首页
                                                   }else{
                                                      $data['is_complete'] = 2;//用户注册第三步详细信息没有填写完成跳到注册第三步
                                                   }
                                         returnApiData('0','登录成功',$data);exit;	
                                    }
                             }
                  }


         //获取短信验证码  并存到session中
        public function sms(){
		        $mobile = I('phone');
			//$mobile = "13624012805";
			if(empty($mobile)){
			  returnmemberError("1", "电话号码不能为空");exit;
			}
			 $sms=$this->send_phone($mobile);
                        //$rcode=$sms[0];  //返回状态值
                        //  if( $rcode ==22){
			//   exit('1小时内同一手机号发送次数超过限制');
			//   }
			// $code=(int)$sms[1];   //返回验证码随机6位
		        if($sms){
                                 returnApiresult('0','发送成功');exit;
                        }else{
                                 returnmemberError("1", "发送验证码过于频繁");exit;
                        }
    	
		}
                
      
                
         public function send_phone($tell){
                      import('Org.Alidayu.top.TopClient');
                      import('Org.Alidayu.top.ResultSet');
                      import('Org.Alidayu.top.RequestCheckUtil');
                      import('Org.Alidayu.top.TopLogger');
                      import('Org.Alidayu.top.request.AlibabaAliqinFcSmsNumSendRequest');
                      $c = new \TopClient;
                      $c->appkey = '23699407';  
                      $c->secretKey = '9db1f1f2185271c0ed07f5aed816fce1';
                      $req = new \AlibabaAliqinFcSmsNumSendRequest;
                      $req ->setExtend( "123456" );
                      $req ->setSmsType( "normal" );
                      $req ->setSmsFreeSignName( "学生惠" );//来源于配置短信签名 下面列表中有签名名称
                      //$code = '1234';
                      $code= rand(100000,999999);//随机六位验证码
                       F('liuq/log/logcode',$code);
                       //  $_SESSION['sms_mobile_code'] = $code;
                       //  $_SESSION['sms_mobile'] =  $tell;
                      $product = '学生惠';
                      $req ->setSmsParam( "{code:'{$code}',product:'{$product}'}" ); //变量来源于 配置短信模板 点击列表中的详情 模板内容的变量
                      $req ->setRecNum( $tell ); //手机号
                      $req ->setSmsTemplateCode("SMS_55690074"); //配置短信模板 列表中有模板id
                      $resp = $c ->execute( $req );
                      //var_dump($resp);
                      return $resp;
                  }

        
       public  function  find_pass(){
               $phone = I('phone');
               $code = I('code');
               if($code == '' || $phone == ''){
                  returnmemberError("1", "您的信息没有填写完整");exit;
               }
               $is_phone = M('member')->where('phone="'.trim(I('phone')).'"')->getField('id');
               if( $is_phone == false){
                    returnmemberError("1", "该用户不存在");exit;
               }else{
                      $sms_mobile_code = F('liuq/find/findcode');
                     if( $code !=  $sms_mobile_code ){
                     returnmemberError("1", "验证码填写错误");exit;
                     } else {
                    // $data['phone'] = $phone;//放在第二页手机号位置
                     $data['cid'] = $is_phone;
                     returnApiData('0','成功',$data);exit;	
                     }
               }
             
           
       }
       
       
       public function find_pass_second(){
              $id = I('cid');
              $phone = I('phone');
              $password = I('password');
              $twicepass = I('twicepass');
             if($password == '' || $twicepass == ''){
                   returnmemberError("1", "您的信息没有填写完整");exit;
             }
               if($twicepass != $password){
                   returnmemberError("1", "两次输入的密码不相符");exit;
             }else{
         
                 $info['password'] = md5($password);
                 $result = M('member')->where('id="'.$id.'"')->save($info);
                    if($result){
                           returnApiresult('0','重置成功');exit;	
                    }else{
                         returnmemberError("1", "找回密码失败");exit;
                    }
             }
           
      }


       //重设密码  获取短信验证码  并存到session中
         public function find_sms(){
			$mobile = I('phone');
                        //$mobile = "13624012805";
			if(empty($mobile)){
			  returnmemberError("1", "电话号码不能为空");exit;
			}
                        $is_phone = M('member')->where('phone="'.$mobile.'"')->getField('id');
                        if( $is_phone == false){
                        returnmemberError("1", "该用户不存在");exit;
                        }
			$sms=$this->find_send_phone($mobile);
                        //$rcode=$sms[0];  //返回状态值
                        //  if( $rcode ==22){
			//   exit('1小时内同一手机号发送次数超过限制');
			//   }
			// $code=(int)$sms[1];   //返回验证码随机6位
		        if($sms){
                                returnApiresult('0','发送成功');exit;
                        }else{
                               returnmemberError("1", "发送验证码过于频繁");exit;
                        }
    	
		}
                
      
                
          public function find_send_phone($tell){
                      import('Org.Alidayu.top.TopClient');
                      import('Org.Alidayu.top.ResultSet');
                      import('Org.Alidayu.top.RequestCheckUtil');
                      import('Org.Alidayu.top.TopLogger');
                      import('Org.Alidayu.top.request.AlibabaAliqinFcSmsNumSendRequest');
                      $c = new \TopClient;
                      $c->appkey = '23699407';  
                      $c->secretKey = '9db1f1f2185271c0ed07f5aed816fce1';
                      $req = new \AlibabaAliqinFcSmsNumSendRequest;
                      $req ->setExtend( "123456" );
                      $req ->setSmsType( "normal" );
                      $req ->setSmsFreeSignName( "学生惠" );//来源于配置短信签名 下面列表中有签名名称
                      //$code = '1234';
                      $code= rand(100000,999999);//随机六位验证码
                      F('liuq/find/findcode',$code);
                      //$_SESSION['sms_mobile_code'] = $code;
                      // $_SESSION['sms_mobile'] =  $tell;
                      $product = '学生惠';
                      $req ->setSmsParam( "{code:'{$code}',product:'{$product}'}" ); //变量来源于 配置短信模板 点击列表中的详情 模板内容的变量
                      $req ->setRecNum( $tell ); //手机号
                      $req ->setSmsTemplateCode("SMS_55690070"); //配置短信模板 列表中有模板id
                      $resp = $c ->execute( $req );
                      //var_dump($resp);
                      return $resp;
                  }
       
 
       
       public function userlogout(){
                 session('sms_mobile_code',null);
                 session('sms_mobile',null);
		 $token   = I('token');
                 $res =  M('member')->where('token="'.$token.'"')->setField('token',' ');
                 returnApiresult('0','退出成功');exit;
	}
	
	
	
	
	
	
	
		
	
	
}